Lua для ComputerCraft
Начнем Ну что ж, вы создали бесконечный цикл, но когда запустили его ваш компьютер отключился? Ну что же вы делаете... лол Добавьте sleep(значение double). Double - вид переменной, подробнее о которой вы узнаете позже, но если говорить кратко - double это число с запятой. Схемы из Красного камня Теперь вы можете создать цикл с интервалом(позже вы научитесь, как делать цикл в цикле) Но теперь мы хотим создавать импульсы красного камня: Входы/Выходы Существует два способа вызвать функции красного камня: rs() redstone() Входы: Вход это место, куда вы хотите принять импульс красного камня redstone.getInput( "сторона" ) Выходы: Выход это место, откуда вы хотите создать импульс красного камня redstone.setOutput( "сторона", boolean ) Если вы хотите проверить все стороны и узнать, на которую идет импульс добавьте: redstone.getSides() Для дополнительной информации введите: help programming help api help redstone Переменные Существует несколько типов переменных: Integers Booleans Tables Doubles Objects nil string Давайте рассмотрим их более подробно: Чтобы объявить переменную вам нужно ввести для неё имя и значение: таким образом: <Название> = <Значение> для матриц: <Название> = {<Значение1>,<Значение2>...и т.д.} вводить без <> Функции и Аргументы Функция это код, написанный в специальном "контейнере" для запуска его снова и снова. Функции вызываются при помощи: function(значение). Просто, не так ли? Да, redstone.*() это тоже функция. Все API состоят из множества функций и переменных, работающих вместе. Функция создается таким образом: function <название>(<переменные>) -- ваш код end Логика и Циклы Логика это то, что заставляет компьютеры работать. Когда нибудь слышали о IF THEN ELSE? Например: if value1 value2 then -- если значение1 равно значение2, тогда --Ваш код end Есть также такие операторы сравнения(вставляйте их вместо в середине): больше чем - > меньше чем - < больше или равно - >= меньше или равно - <= не равно ~= Вы также может сравнивать одновременно несколько значений, например: and(и), or(или), not(не равно) if v1 v2 and v3~=v4 then end Если вам нужно сделать условие "если .. тогда .. иначе ..", то вам нужно добавить else: if v1 v2 then --code else --code end Если вам нужно больше трех условий, то нужно использовать elseif if v1 v2 then --code elseif v1>v2 then --code else --code end Циклы Существует два вида циклов: цикл while и цикл for Цикл while это цикл, который будет повторяться до тех пор, пока условие не выполнится. Поэтому, если вы хотите бесконечный цикл, то вам нужно написать такой код: while true do sleep(1) end Но если вы хотите, чтобы цикл заканчивался, используйте такой код: con = 5 -- условие met = 0 -- значение цикла while met < con do --условие цикла met = met+ 1 -- добавляем 1 к значению цикла sleep(1) -- ждем 1 секунду print met -- пишем на экран значение цикла end Если вы хотите, чтобы пользователь должен был сделать что-то(например, ввести пароль), добавьте в цикл: print "Enter Password: "-- отображает на экране Enter Password: a = read()-- считывает то, что введено с клавиатуры в переменную типа string(текст) На этом мы и закончим. С вами были vat21s и Strider_RUS, удачного веселья. Переведено: Strider_RUS Большое спасибо! Strider_RUS Написано: vat21 Категория:Крафты и описания